Sonic fast-sync method and system for bluetooth

ABSTRACT

A method, apparatus and computer program product for fast-synching a wireless Bluetooth connection using a first device&#39;s wireless identifier is provided. One implementation of the present invention modulates the wireless identifier as a sonic Bluetooth code over a sonic carrier signal. To send the wireless identifier, one implementation accesses a storage area associated with the first wireless device holding the sonic carrier signal. Aspects of the invention then transmit the sonic Bluetooth code as modulated over the sonic carrier signal. A sonic transducer, such as a microphone on the second wireless device, receives the sonic carrier signal and wireless identifier for demodulation. In response, the second wireless device requests to establish a physical channel with the first wireless device using the wireless identifier received over the sonic carrier signal.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims benefit and is a continuation of U.S.application Ser. No. 12/942,996 filed Nov. 9, 2010 which, in turn,relates to and claims benefit of U.S. application Ser. No. 12/870,767,filed Aug. 27, 2010 and titled “Sonic Communication System and Method”by Brett L. Paulson, assigned to the assignee of the present applicationand incorporated by reference herein for all purposes.

BACKGROUND OF THE INVENTION

Aspects of the present invention relate to Bluetooth communication.

Widespread availability and popularity of mobile devices have made themindispensible in both business and everyday use. These mobile devicesinclude portable computing devices such as laptops, netbooks and tabletsthat provide mobile computing power as well as access to the informationon the Internet, text messaging, email and other functions. Other mobiledevices such as wireless phone devices not only provide theaforementioned portable computing functionality but further includewireless voice capabilities along with applications utilizing built-incameras, global positioning satellite (GPS) services and others.

Convergence of mobile devices has resulted in a similar set of featuresoffered in a variety of different form factors. Some of these sharedfeatures include powerful processors, increased battery life, largerdisplays, fully functional web-browsers, hi-fidelity sound systems andtelephony capabilities. For example, wireless phone devices classifiedas smartphones may combine a small form-factor with powerful processorsand multitasking operating systems previously available only on desktopcomputing devices. The smartphone device is generally small enough tofit in a pocket or purse and typically uses a touchscreen keyboard orminiature “thumb” keyboard for the easy entry of data.

Larger format portable computers deliver almost the same set of featuresas the smaller form-factor devices. Because they are larger, theydeliver a longer battery life, more powerful computing power,wired/wireless networking and larger displays. Telephony is added tothese devices using protocols/services such as voice-over-IP (VOIP) andSkype (Skype is a registered trademark in the United States and othercountries of Skype Technologies S.A.).

Despite these many advances, mobile devices still have difficultycommunicating directly with each other or, for that matter, desktopcomputers or workstations. When people wish to exchange information,they still generally send an email or text message with their mobiledevice to the mobile device of the person they are trying to reach.Likewise, mobile devices attempting communication with a desktopcomputer have little choice but to send the user of the desktop computera brief email or text message as well. Unfortunately, manually enteringinformation needed for emails or text messages is time consuming, proneto error and often dissuades people from interacting altogether.

Indeed, attempts to establish direct communication between mobiledevices has been met with failure for a variety of reason. In manycases, too few devices have the specialized hardware required forcommunication. For example, infrared transceivers are not found on allmobile devices or computers and therefore lack the scale required topermit reliable communication. Moreover, infrared communication is notonly slow but also requires a line-of-sight between the transceivers ofthe devices to operate.

Bluetooth communication is another interesting wireless protocol sharedby many mobile devices but fraught with problems. In particular, thedelay associated with “pairing” Bluetooth devices is unacceptable. Userstrying to communicate or send data over Bluetooth may opt for a simplermethod (i.e., copying data to a thumb drive or other removable storage)than spend the time it takes to establish and use a Bluetoothconnection. Time delay associated with Bluetooth pairing not onlyfrustrates users but tends to make the data transmitted more susceptibleto interception and security breaches.

Pairing delay associated with setting up a Bluetooth connection alsoimpacts it's more basic use as a substitute for wires and cables. In thecase of Bluetooth headsets, many people would opt to use conventionalheadsets and wrestle with a tangle of wires than attempt to troubleshootthe problems associated with making a Bluetooth connection. Rather thanmiss or lose a phone call, many find it quicker and safer to plug aheadset into the headset jack of phone device than rely upon Bluetoothpairing.

Some have suggested improving the pairing delay of Bluetooth usingbarcodes on the screen of a mobile device. This approach involvesdisplaying and reading bar codes from the display of the mobile deviceto improve the Bluetooth pairing process. Special bar codes cangenerally be displayed on a mobile device and then read by anotherdevice or computer having a camera or bar code scanner. However,processing bar codes in this manner can be difficult as each displaydevice may need to be configured with different display parameters,aspect ratios, display resolutions and other factors to ensure the barcodes can be read reliably.

SUMMARY

One aspect of the present invention includes storing a sonic carriersignal carrying a wireless identifier associated with a first wirelessdevice. The wireless identifier not only identifies the first wirelessdevice but facilitates establishing communication with a second wirelessdevice in accordance with the Bluetooth protocol. One method and systemof the present invention converts the wireless identifier and modulatesit as a sonic Bluetooth code configured to be transmitted as sound whena sonic carrier signal is processed. A representation of the soniccarrier signal can be stored in a storage area on the first wirelessdevice or in a storage area accessible by the first wireless device. Ifa file system is available, the sonic carrier signal may be stored as afile in the file system in accordance with an audio format. However, itis also possible to store the sonic carrier signal as a stream of binarydata without the constructs of the file system.

Yet another aspect of the present invention includes facilitatingBluetooth communication from a first wireless device using a wirelessidentifier modulated over a sonic carrier signal. To send the wirelessidentifier, one implementation first accesses a storage area associatedwith the first wireless device where the sonic carrier signal is stored.A sonic Bluetooth code modulated over the sonic carrier signal includesat least the wireless identifier associated with the first wirelessdevice. Next, one implementation of the invention then transmits thesonic Bluetooth code as modulated over the sonic carrier signal. A sonictransducer, such as a microphone on the second wireless device, receivesthe sonic carrier signal for demodulation and further processing.Aspects of the present invention receive a request from the secondwireless device to establish a physical channel based upon the wirelessidentifier transmitted to the second wireless device over the soniccarrier signal.

Yet another aspect of the present invention concerns facilitatingBluetooth communication using a second wireless device. Initially,implementations of the invention prepare a transducer on the secondwireless device to receive a sonic Bluetooth code modulated over a soniccarrier signal. For example, this may involve keeping the microphone andaudio processing on the second wireless device in an “always-on” stateready to capture the sonic carrier signal at anytime. At some point intime, the sonic transducer receives a sonic Bluetooth code modulatedover a sonic carrier signal representative of the wireless identifierassociated with the first wireless device. Aspects of the presentinvention demodulate the sonic Bluetooth code from the sonic carriersignal to produce the corresponding wireless identifier associated withthe first wireless device. The second wireless device transmits arequest to the first wireless device to establish a physical channel inaccordance with the Bluetooth protocol using the wireless identifierreceived over the sonic carrier signal.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a communication network inaccordance with aspects of the present invention;

FIG. 2 is a schematic block diagram of the systems and methods forimplementing aspects of sonic communication services in accordance withthe present invention;

FIG. 3 is a flowchart representation of the operations for wirelesslytransmitting data modulated over a sonic carrier signals in accordancewith implementations of the present invention;

FIG. 4 is a flowchart representation of the operations for implementingsonic transmission strategies that reduce the probability ofinterference from noise in accordance with aspects of the presentinvention;

FIG. 5 is a one exemplary graph illustrating a sonic frequency responseas received by a receive device in accordance with one implementation ofthe present invention;

FIG. 6 is yet another flowchart representing the operations forwirelessly receiving the sonic carrier signals and data on a receiverdevice in accordance with one implementation;

FIG. 7 is a schematic block diagram of a device capable of sonicallytransmitting and receiving data in accordance with implementations ofthe present invention;

FIG. 8A depicts layers associated with a Bluetooth protocol stack usedin accordance with aspects of the present invention;

FIG. 8B illustrates the organization of Bluetooth devices in networksreferred to as piconets in accordance with aspects of the presentinvention;

FIG. 9 illustrates the operations for implementing sonic Bluetoothfast-sync as between two Bluetooth devices in accordance with aspects ofthe present invention;

FIG. 10 is a flowchart diagram providing the operations associated withstoring a sonic carrier signal on a storage area associated with a firstwireless device in accordance with aspects of the present invention;

FIG. 11 is another flowchart diagram illustrating operations associatedwith sonically transmitting a wireless identifier and making a Bluetoothconnection between a first wireless device and a second wireless devicein accordance with one implementation;

FIG. 12 is another flowchart diagram illustrating further authenticationoperations possible when providing a sonic Bluetooth code over a soniccarrier signal in accordance with one implementation of the presentinvention; and

FIG. 13 is another flowchart diagram illustrating operations associatedwith sonically receiving a wireless identifier and making a Bluetoothconnection between a second wireless device and a first wireless devicein accordance with one implementation.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

Aspects of the present invention provide a method and system for using asonic carrier signal to connect Bluetooth devices together quickly. Inparticular, the sonic communication protocol of the present inventioncan be used to supplant the time consuming and frustrating process ofdevice “discovery” that occurs between two or more Bluetooth devices. Inone implementation, a special sonic Bluetooth code representing thewireless identifier of a first Bluetooth device can be transmittedsonically to a second Bluetooth device quickly and reliably. The secondBluetooth device can then use the wireless identifier to rapidly setup aBluetooth connection with the first Bluetooth device and thus bypass theInquiry substate of the Bluetooth protocol used during discovery.

Sonic Bluetooth fast-sync of the present invention is particularlyvaluable as it is compatible across a wide range of computers and mobiledevices. Bluetooth devices with sound components and other supportinghardware that communicate sonically may implement aspects of the presentinvention. For example, many computers and mobile devices may alreadyinclude CODECs, filters, digital signal processors (DSP), memory andother sound processing components needed to implement aspects of thepresent invention.

Bluetooth devices from different manufacturers may implement sonicfast-sync of the present invention. In part, this is because a soniccarrier signal of the present invention can be processed by mobiledevices and computers from different manufacturers. It is thereforepossible for various devices to fast-sync Bluetooth in accordance withthe present invention while running on dissimilar hardware platforms andotherwise incompatible operating systems. For example, a wireless devicerunning the Android operating system can readily communicate sonicallywith a computer device running Microsoft Windows, the Apple OS Xoperating system or an Apple iPhone or iPad (Windows is a registeredtrademark of Microsoft Corporation of Redmond, Wash., Android is aregistered trademark of Google, Inc. of Mountain View Calif., iPhone andiPad are registered trademarks of Apple, Inc. of Cupertino, Calif.).

Bluetooth fast-sync and sonic communication implemented in accordancewith the present invention also has considerable economic advantages.First, a majority of the hardware required for Bluetooth fast-sync isalready installed on the computers and mobile devices of interest.Software designed in accordance with the present invention can thereforebe installed on most devices without requiring as much as an upgrade. Insome cases, there may be a nominal cost associated with attaching amicrophone or speaker to the sound components already installed on thedevice. Even if the sound components are not already installed on thesedevices, there are many after market manufacturers of sound componentsand sound cards that can be combined with or added to existing hardwareat a relatively low-cost. In some cases, it may even be cost-effectiveto create custom or semi-custom sound card designs using readilyavailable CODECs and processors.

FIG. 1 is a block diagram illustrating a communication network 100 inaccordance with aspects of the present invention. In one implementation,sonic communication services 104, sonic stations 108 and sonic enabledbusinesses 106 are operatively coupled together over a data network 102.Data network 102 can be the Internet or any other network.

Sonic enabled businesses 106 include any business implementing the soniccommunication methods and systems designed in accordance with thepresent invention. These sonic enabled businesses may implement soniccommunication services 104 to enable communication between computers andmobile devices in the course of selling their products or services. Forexample, sonic enabled businesses 106 may include social networkingsites that implement aspects of the present invention and allow mobiledevices to directly transmit their contact details to each other. Sonicenabled businesses 106 might also include retail businesses using soniccommunication methods and systems of the present invention to acceptpayments, process gift cards, coupons, loyalty awards and otherprograms.

Sonic stations 108 represent one or more fixed points for distributingor receiving sonic communication in accordance with the presentinvention. Illustrative examples of sonic stations 108 may includepoint-of-sale (POS) registers for the sale of goods or services, kiosksdistributing information at malls, museums or other public areas as wellas any terminal used to facilitate any transaction of value with amobile device or computer. The term value is meant to broadly includepoints in loyalty programs, prepaid telecommunications minutes, prepaidgift cards, airline mileage, digital music downloads, streaming music,streaming video, streaming multimedia as well as any other service orproduct of some worth to one or more parties.

Sonic communication services 104 facilitate processing certain portionsof the sonic communications for sonic enable businesses 106 and any ofthe various devices coupled to wireless network 118. Implementations ofsonic communication services 104 may include a combination of computers,servers, communications equipment and software designed, configured andcreated in accordance with the present invention. For instance, theremay be software applications installed on servers encoding/decoding datamodulated over sonic carrier signals in accordance with the presentinvention. It is also contemplated that communication equipment may bespecially configured and/or embedded with firmware to support usingsonic communication of the present invention and prioritize high valuetransactions such as involving electronic commerce. For example, thefirmware may enable high-availability (HA) protocols for ensuring anorderly completion or roll-back of transactions when an unexpectedcommunication failure occurs anywhere along the communication pathdownstream from the sonic communication services 104, between thedevices coupled to the wireless network 118 or within systems supportingsonic communication services 104. Additional measures may also be takento prioritize electronic commerce transactions above non-commercialtransactions within sonic communication services 104 to ensure a morerapid processing of the data and resultant transactions among sonicstations 108 and devices coupled to wireless network 118.

In one aspect, sonic communication services 104 may include a set ofpreliminary or front-end services for managing the initial creation ofdata to be sent between devices. These front-end services may includeauthoring media such as audio files embedded with data modulated overone or more sonic carrier signals. Sonic communication services 104 canbe used to author media with modulated data when it is not desirable toperform the modulation directly on a device or devices using soniccommunication. For example, it might be advantageous to use soniccommunication services 104 to install an audio file with modulated dataon a device during manufacture. The data may be used to identify thedevice when the audio file is played back and demodulated by anotherdevice in accordance with the present invention. Depending on thedevice, sonic communication services 104 may store the audio file innon-volatile random access memory (NVRAM) during manufacture such asflash memory, read-only memory (ROM), programmable ROM (PROM), orerasable PROM.

Further aspects of sonic communication services 104 may include back-endservices that help facilitate more complex transactions between two ormore devices using sonic communication of the present invention. Devicesregistered with sonic communication services 104 receive identifierssonically transmitted to each other during a transaction. Sonicallyenabled devices receive these identifiers and may then forward to soniccommunication services 104 over data network 102 where the identifiersare further processed and associated with their respective registereddevices. For example, sonically enabled devices may include anycombination of sonic stations 108 and the various devices coupled towireless network 118 illustrated in FIG. 1. Once devices are positivelyidentified, various types of transactions can be performed securely androbustly in a variety of circumstances.

Some sonic enabled businesses 106 may choose to utilize soniccommunication services 104 over data network 102 based upon a softwareas a service (SaaS) model. The SaaS model can be used to deliver soniccommunication services 104 in accordance with aspects of the presentinvention on a subscription basis. Typically, pricing depends on thetime period and volume of use with respect to sonic communicationservices 104. Delivering sonic communication services 104 over a networkin this manner can also be referred to as a “cloud computing” solutionas the local devices take advantage of software services and processingpower located remotely on computers across a network.

Instead of the SaaS or cloud computing model, alternate implementationsmay instead install sonic communication services 104 on a dedicatedcomputer or appliance located on the business premises. The locallyinstalled appliance solution gives businesses more direct access andcontrol over the computers and software running sonic communicationservices 104. Advantageously, the appliance solution enables businessesto better control the reliability and availability of soniccommunication services 104 with redundant systems, virtualization andincreased monitoring. Moreover, the locally installed appliance withsonic communication services 104 might save money for a businessprovided the annual license fee and appliance costs are less thanequivalent subscription fees.

Yet another implementation delivers sonic communication services 104partially using a cloud computing model and partially as an appliance.Frequently used functions requiring higher performance from soniccommunication services 104 may be preloaded on the locally installedappliance. Less frequently used functions not available locally areaccessed from sonic communication services 104 in the cloud. The soniccommunication services 104 delivered partially as an appliance andpartially in the cloud has the optimal combination of benefits from bothmodalities of delivery.

A wireless provider may provide a data/voice bridge 120 connectingvarious devices over wireless network 118 to data network 102. Ingeneral, wireless network 118 provides voice communication capabilitybetween some or all of the devices registered on the wireless network118. Data services like Internet or intranet access and SMS textmessaging may pass through wireless network 118 and onto a data channelportion of the data/voice bridge 120. Data/voice bridge 120 can alsoserve to connect wireless network 118 to other data and wirelessnetworks (not shown).

In this example, devices on wireless network 118 may include wirelesssmartphones 110, conventional mobile phones 112 (also referred to asmobile feature phones), laptops 114 and smartbooks 116. In addition totransmitting voice, some of the more sophisticated mobile devices suchas smartphones 110 have powerful processors, larger data storagecapacity and the ability to display high resolution images and text invarious fonts and point sizes on larger screens. Mobile devicesprovisioned on wireless network 118 generally have a phone number andthe ability to place a voice call to other mobile devices. Wirelessphone providers for wireless network 118 may implement any one or moredifferent wireless protocols including Global System for Mobile (GSM),Code Division Multiple Access (CDMA) and variants compatible with one ormore features of these technologies.

Mobile devices on wireless network 118 such as smartphones 110 may use adata protocol such as TCP/IP to access data network 102 throughdata/voice bridge 120. These mobile devices have built-in modems toaccess wireless network 118 and sufficient computing power to processthe associated data protocol for accessing data network 102. Certainother devices such as laptops 114 and smartbooks 116 have also beenequipped with modems to both wireless network 118 and data network 102.

Alternatively, aspects of the present invention also works with mobiledevices such as laptop 126 connected directly to data network 102.Laptop 126 bypasses wireless network 118 and accesses data network 102directly using either a wired connection such as Ethernet over aphysical medium such as CAT5/6 or a wireless medium such as Wi-Fi,Wi-MAX or others. It is also contemplated that any or all of the deviceson wireless network 118 may also communicate directly with data network102 if they are further equipped with Wi-Fi, Wi-MAX or other wirelessdata communication and protocols.

Sound components and capabilities are essential to making soniccommunication of the present invention operate. Fortunately, laptops114/126, smartphones 110, conventional mobile phones 112, and smartbooks116 generally have sound components that digitally process sound athigh-sample rates and a wide frequency response. Indeed, even a wirelessheadset 124 can use aspects of sonic communication in accordance withthe present invention provided the CODEC in the headset has asufficiently high sample rate and reproduces sound over a wide enoughfrequency response.

In general, sonic stations 108 have built-in sound components tofacilitate performing sonic communication in accordance with the presentinvention. For example, many retail point-of-sale registers and kiosksystems are based upon computer platforms with sound components thatdigitally process sound with a high sample rate and wide frequencyresponse. To communicate with sonic stations 108 lacking these soundcomponents, it may be necessary to install sonic transducers and soundcomponents to process sound and either transmit or receive signals overa speaker or microphone respectively.

It should be appreciated that aspects of the present invention allow awide range of communication to take place between the devices depictedin FIG. 1. In one example, sonic stations 108 can send data encoded inaccordance with the present invention and mixed in with an audio streamthat plays a recognizable “jingle” or music 120. People recognizing themusic 120 playing in the audible range may then expect a decodeapplication running on their mobile device and designed in accordancewith the present invention to capture the music and decode the sonicdata sent by sonic stations 108. Depending on the design, it is possiblefor a single POS register from sonic stations 108 to transmit the audiostream embedded in music 120 to more than one of laptops 114/126,smartphones 110, conventional mobile phones 112, and smartbooks 116(i.e., a one-to-many communication). Likewise, alternate designs mayeffectively limit similar communications between a single POS registerand a single mobile device (i.e., one-to-one communication).

Smartphones 110 and other devices coupled to wireless network 118 mayalso transmit and receive data encoded within an audio stream to eachother in accordance with the present invention. These soniccommunications may occur “silently” by omitting the audible musical cueor “jingle” and selecting a frequency and gain for the sonic carriersignal 122 inaudible to most people. Nonetheless, while the signal maynot be detected by a person, microphones on the devices activelylistening for sound will readily capture the sonic carrier signal 122and decode the data for further processing.

FIG. 2 is a schematic block diagram of the systems and methods forimplementing aspects of sonic communication services 104 in accordancewith the present invention. Since FIG. 2 is an illustrative schematicdesign, the actual organization of the functions could be combined orseparated in a different manner other than how presented in thisexample. It is also contemplated that greater or fewer functions thanthose illustrated and described in conjunction with FIG. 2 could beincluded in accordance with systems and methods of the presentinvention.

Accordingly, sonic communication services 104 includes a dispatcher 200that distributes processing of tasks to one or more areas of operationsincluding a sonic application store 202, sonic marketing systems 204,sonic authoring systems 206, accounting systems 208, financialtransaction systems 210 and sonic security systems 212. Each of thesesystems may be implemented with a combination of computers,communication equipment and software to distribute tasks and results.

Application store 202 includes applications implementing soniccommunication designed in accordance with aspects of the presentinvention. Applications can be downloaded onto smartphones, featurephones, computers or other devices that communicate and transact withother sonically enabled devices. It is contemplated that soniccommunication of the present invention will greatly enhance existingwebsites and applications as well as spawn the creation of entirely newfunctions and applications.

In general, the software in application store 202 can be divided intosonic application shims 226 and discrete sonic applications 228. Sonicapplication shims 226 provide developers with libraries and applicationprogramming interfaces (API) to add sonic communication features totheir existing applications. Some sonic application shims 226 mayprovide general purpose APIs while other sonic application shims 226 maybe tailored to the requirements of a certain class of applications. Incomparison to a shim, discrete sonic applications 228 may be entirelynew applications developed around the sonic communication features ofthe present invention.

Specifically, one sonic application shim 226 may include APIs forintegrating sonic communications of the present invention with aparticular social network platform such as Facebook, MySpace, Ning,Twitter, or Four-Square. Such sonic application shim 226 may allowin-person exchange of social network ids and data rather than over theInternet. Accordingly, mobile versions of these social websites enhancedwith the present invention can allow subscribers to exchange personalinformation and contact information from their various social networksdirectly using their mobile devices.

In addition, APIs for social networking would further enablemicrolocation vis a vis strategically placed sonic stations 108. Forexample, a sonic station 108 placed in a supermarket would enable amobile device user to accurately identify their location and thenbroadcast their location to other members of the social network.Microlocation facilitated by sonic communication of the presentinvention could be designed to work at various distances between thesonic station and a mobile device thus providing more accuracy thanalternate solutions such as GPS (global positioning satellite) systems.

A further subset of the applications contemplated using soniccommunications of the present invention include coupon-clipping,point-of-sale (POS) systems and paperless receipts, sonic paymentsystems, ringtone exchange, sonic voting, sonic data transfer andcloud-based storage, sonic dating matchup, sonic vending, video sharing,audio sharing, in-store discount systems, loyalty programs, gift-cardmanagement and redemption, and kiosk systems for information delivery.

In one implementation, coupon-clipping is an application on a mobiledevice that collects coupons sent sonically from a personal computer inaccordance with aspects of the present invention. For example, a mobiledevice positioned near the speakers of a computer receives sonic codesencoded in the various articles, banner ads, display ads and click-thruadvertisements found on websites on the Internet. As people visit thesewebsites, the advertisements play audio modulated with the sonic codes.The audio is demodulated on the mobile device where the sonic codes maybe exchanged for coupons or promotional items.

Alternatively, coupons may be delivered to the mobile devices in-storethrough sonic stations 108 strategically placed within a store. Thesesonic codes are also decoded on the mobile device and exchanged forelectronic coupons and discounts downloaded into a coupon clippingapplication running on the mobile device. To redeem coupons, the mobiledevice may send corresponding sonic signals associated with the couponsto a POS system. The POS system securely processes the coupons andpayment information and returns a paperless receipt to the mobile deviceonce the product or service purchase is completed.

Sonic payment systems can also use sonic communication to transmitpayment or value using debit, credit, cash, or other forms of monetaryexchange such as with PayPal® (PayPal is a registered trademark of Ebay,Inc. of Sunnyvale, Calif.) These payments may take place between amobile device and point-of-sale (POS) register, between mobile devicesor between various combinations of other types of sonically enableddevices.

Ringtone exchange uses sonic communication to send ringtone codesrepresenting downloadable ringtones to sonically enabled devices. Forexample, a mobile device may receive a sonic code over a speaker fordownloading a ringtone onto the mobile device. The mobile device wouldthen decode the sonic code and use it to access and download theringtone over the Internet.

Sonic voting transmits sonic codes through a speaker and onto a mobiledevice whereupon the voting is initiated. These sonic codes for votingare decoded on the mobile device where the voters place their votes andsend over the Internet. Sonic voting could be used in numerous contextsfrom local/state/federal elections to television shows having audienceparticipation and voting. In the case of television broadcasts, thesonic codes can be transmitted during the broadcast over the televisionspeakers to the mobile devices and users who then place their votes orvoice their opinion as requested.

Sonic data transfer and cloud-based storage allows the storage andexchange of general data between two or more sonically enabled devices.For example, people can use sonic data transfer to move data from a workcomputer to a mobile device, cloud-storage or to some other locationusing sonic communication of the present invention.

Sonic dating matchup of the present invention allows people to opt-in oropt-out of sending personal information via a sonic carrier signal toother individuals in the geographic vicinity of a nightclub, supermarketor elsewhere. If they do opt-in, these individuals could then alsoselectively share more personal contact information such as a homeaddress/phone number, on-line contact information, or email addresses.

Sonic vending applications would allow sonically enabled vendingmachines to receive sonic communication from a mobile device anddispense certain products or services. For example, a mobile devicemight send a sonic signal to a vending machine that gives the vendingmachine the ability to access a limited amount of money from a checkingaccount or credit card and pay for the product or service. It iscontemplated that the vending machine would use the Internet, a dial-uptelephone line or other networks to securely access bank accounts,credit cards and other sources of money.

In one implementation, sonic marketing systems 204 manage marketingcampaigns and placement of advertisements using sonic communicationassociated with aspects of the present invention. The sonic marketingsystems 204 in this example include a sonic advertising server 220,advertising content 222 and coupons/loyalty programs 224. Advertisingcontent 222 includes videos with audio, images with audio and alsostand-alone audio authored with sonic codes. In one example, advertisingcontent 222 and audio would be delivered when certain websites wereaccessed, when certain selectable elements on the websites are accessedby a user or from certain search results. Upon these or other similarevents, sonic advertising server 220 would ensure delivery of the audioportion of the multimedia advertising content 222 authored with soniccodes embedded therein. Playing the audio back through the speakers of acomputer or other system causes advertisements, coupons or othermarketing materials to appear on the mobile device demodulating datafrom the sonic signal.

Coupons/loyalty programs 224 would be delivered in a similar manner toadvertising content 222 except that a user would register in advancewith a website in and opt-in to receiving coupons or loyalty bonuspoints. For example, a user might register with a retail website such asStarbucks® to receive coupons and be a member of their loyalty program(Starbucks is a registered trademark of Starbucks Corporation ofSeattle, Wash.). Upon visiting certain websites, sonic advertisingserver 220 would deliver a retail ad for display that also sends anaudio code to the user's mobile phone and gives them loyalty pointsand/or a coupon that they can redeem at a retail store such asStarbucks®. For example, loyalty points at a Starbucks could be redeemedfor a free drink or possibly other benefits for obtaining a certainamount of points. Coupons from multiple vendors can be collected usingsingle coupon clipping application stored on the mobile phone andredeemed on a POS register sonic communication of the present invention.

Authoring system 206 provides tools and applications that modulate soniccodes within a digital stream in accordance with aspects of the presentinvention. These tools and applications convert data into digital codesand modulate them over a sonic carrier signal within various types ofmultimedia content 218. In some implementations, authoring system 206executes on a mobile device allowing the mobile device to directlymodulate data over the sonic carrier signal in accordance with thepresent invention. Other implementations allow the mobile device to senddata over a network like the Internet to a server where a server such assonic media authoring platform 216 performs the authoring on behalf ofthe mobile device.

Accounting system 208 performs functions related to enrollment andgeneration of revenue for a sonic communication system in accordancewith aspects of the present invention. In one implementation, accountingsystem 208 includes an administrative server 268, membership anddemographics 270, advertising revenue 272 and financial resolution data274. Administrative server 268 coordinates tasks between the varioussubsystems and updates one or more respective databases.

Membership and demographics 270 manages registration of members and alsoproduces demographic information useful for selling marketing andadvertising products and services. Microlocation information can also becollected if a sonic enabled mobile device is used to “check in” to alocation with a fixed sonic device such as a sonically enabled POSregister. In this context, membership and demographics 270 may not onlyprovide detailed and updated purchase information on transactions butthe location of a sonically enabled device and possibly how long thesonically enabled device is within a particular store or location beforemaking a purchase. Financial resolution data 274 contains informationfor collecting revenue and payment to business partners using the soniccommunication system.

Financial system 210 involves collection of revenue from advertisingplacement and other sonic communication services in accordance withaspects of the present invention. The financial system 210 includes atransaction server 276 for keeping track of financial events andtransaction clearance process 278 to debit and credit funds fromfinancial institutions 280. In one implementation, transaction clearanceprocess 278 has the authority to securely interact with financialinstitutions 280 using automated clearing house (ACH) transfers, wiretransfers, and credit cards to ensure a proper transfer of funds.

Sonic security processing 212 includes computers, communication devicesand software for providing various types of security along with securelyimplementing aspects of sonic communication of the present invention. Inone implementation, sonic security processing 212 uses sonic codes toimplement public-private key management. For example, mobile devices canexchange public keys by modulating a public key as data exchangedthrough one or more sonic communication signals. Authentication oftransactions may be implemented though a comparison of sound samplestaken from the locale when and where the transaction occurs. Any or allparties to a transaction may be required to provide comparable soundsamples if the transaction is to be honored. Conversely, if parties tothe transaction have sound samples that differ beyond a threshold, thetransaction between the two or multiple parties may be considered void.

FIG. 3 is a flowchart representation of the operations for wirelesslytransmitting data modulated over a sonic carrier signal in accordancewith one implementation. Aspects of the present invention provide sonictransmission strategies for transmitting a sonic carrier signal whileavoiding existing noise in a geographic location (302). Since soundtransmission is unregulated, the full spectrum of sonic frequencies isgenerally available for use by the sonic communication system. Forexample, in a quiet environment a sonic communication system and methodof the present invention aspects may be able to transmit over a sonicfrequency range starting as low as 20 Hz and as high as 60 KHz. With alow level of noise, aspects of the present invention may achieve robustsonic communication using most if not all of the frequencies from withinthis sample range of sonic transmission frequencies.

In noisier environments, aspects of the present invention continue toachieve robust communication through careful selection of the sonictransmission frequencies and timing of the transmission. Samples of theambient sound in the area are used to create a noise characteristicindicative of the most prevalent sounds. If the noise characteristicindicates that the desired sonic transmission frequencies areunavailable, aspects of the present invention may decide to delaytransmission of the sonic signal a random interval of time, resample andthen retransmit. A variant of this strategy may also determine thataspects of the present invention not only delay transmission buttransmit sonic carrier signals multiple times in an effort to overcome atemporary use of the desired sonic frequencies in the area. For example,the noise of a coffee grinder in a coffee shop may fill a wide range ofavailable sonic frequency spectrum for a very short period of time.Aspects of the present invention may delay one or more intervals of timeuntil a subsequent sample of the sound indicates that the grinder hasstopped and the sonic transmission frequencies are available. Detailsassociated with the strategy process are described in further laterherein with respect to FIG. 4.

Next, a transmit device receives data to be transmitted through airusing the sonic carrier signals over the sonic transmission frequencies(304). The data may be binary information suitable for immediate signalprocessing or may be symbols such as alphanumeric data submitted throughapplications associated with short messaging service (SMS)communications, emails, or communications within social network servicessuch as twitter, Facebook, MySpace, FourSquare and others. Generally,the transmit device receives data from these applications or othersthrough a set of application programming interfaces (APIs) incorporatedinto the sonic transmission method and system. Alternatively, it is alsopossible for a user to enter data directly into the sonic transmissionmethod and system of the present invention through keystrokes capturedby a data entry interface.

Data received on the transmit device may further include sonic codesthat indirectly access data in databases and other lookup-type services.For example, data transmitted from the transmit device to the receivedevice might be a sonic code corresponding to a credit card or bankaccount entry in a database located on one or more servers in accordancewith aspects of the present invention. If alphanumeric or other symbolsare used for these sonic codes, the symbols may first be converted intoa digital stream of data for further processing.

To send and receive the sonic communication signal, both the transmitdevice and the receive device should each have at least one and possiblytwo sonic transducers. For example, the sonic transducer on the transmitdevice for sending the sonic carrier signal can be a speaker and thesonic transducer on the receive device can be a microphone. It is alsopossible that a single sonic transducer could be used for sending andreceiving the sonic carrier signal depending on the implementation andoverall system requirements.

Next, aspects of the present invention determine if the data should bemodulated over the sonic carrier signal locally on the transmit deviceor remotely using a server (306). To conserve processing on the transmitdevice, aspects of the present invention may send the data to the serverfor processing and modulation (306-No). Modulation on the server may benecessary if the transmit device has limited storage or processing powersuch as with a basic mobile phone or feature phone. In oneimplementation, the transmit device sends the data over a network formodulation on the server at one or more sonic transmission frequencies(308). Once the server completes the modulation, the transmit devicereceives data back from the server modulated in accordance with a sonicmodulation protocol designed in accordance with the present invention(310).

The server modulates the data on a sonic carrier signal using thespecified sonic transmission frequencies in accordance with a sonicmodulation protocol. For example, the server may use multiple sonictransmission frequencies to implement a protocol based upon frequencyshift key modulation (FSK). In accordance with one implementation, theFSK protocol generally transmits over at least two differentfrequencies—a “1” may be transmitted on one sonic transmission frequencywhile a “0” may be transmitted on another sonic transmission frequency.While FSK is one useful modulation protocol, alternate modulationprotocols may also be used including minimum shift keying (MSK),quadrature phase shift keying (QPSK) and others.

If the transmit device has sufficient processing and storagecapabilities, the data may be modulated on the transmit device(306-Yes). In this implementation, the transmit device modulates thedata using the sonic carrier signals at one or more sonic transmissionfrequencies (312). As described later herein, the sonic transmissionfrequencies used by the sonic carrier signals may avoid interferencewith the noise in the locale using one or several different soniccommunication strategies.

Next, the transmit device transmits the modulated data over the soniccarrier signals through the sonic transducer and over the air to thereceive device (314). The present invention provides robust soniccommunication even in the presence of noise. It is contemplated thatgain of the sonic carrier signals should be adjusted to carry them therequisite distance to the receive device where data from the soniccarrier signal is demodulated.

Further details on strategies to reduce the impact of noise on soniccarrier signals are provided by the flowchart in FIG. 4. Accordingly,aspects of the present invention initially set the sonic transmissionfrequencies to the highest frequencies available in a communicationsystem (402). These frequencies are initially determined by the highestfrequencies the transmit device can send and the receive device candetect and decode. This means that the transmit device must be able tomodulate the data at these frequencies as well as have the output stageand transducer, such as a speaker, to reproduce these signals. Forexample, the transmit device should be equipped with a CODEC orfunctional equivalent that samples at least twice the sonic frequencybeing transmitted. Likewise, the receive device needs to be equippedwith a similar type CODEC as well as a transducer, such as a microphone,sensitive enough to detect the sonic carrier signal and demodulate thedata. Once again, the receive device sample rate should be at leasttwice the transmission frequency to accurately reproduce the soniccarrier signal.

Next, aspects of the present invention creates a noise characteristicover a predetermined time period that reflects a range of sonicfrequencies and their gain in a geographic location (404). In oneimplementation, the noise characteristic is created by recording or“sniffing” a sample of the sound in a geographic location. Samples maybe recorded once or multiple times over a period of seconds, minuteshours, days, or longer periods. FIG. 5 illustrates one example noisecharacteristic displaying gain and frequency along with sonic carriersignals of the present invention.

Using the noise characteristic, the present invention determines whethera receive device could potentially demodulate data from sonic carriersignals and sonic transmission frequencies (406). In one implementation,the noise characteristics are first analyzed to determine what sonictransmission frequencies, if any, are available within the sample orsamples of the sonic spectrum. For example, a noise characteristic mayreflect an absence of sonic noise in the range of 15 Khz to 22 Khz.Second, aspects of the present invention evaluates the sample rate andsensitivity of the receive device in light of the available sonictransmission frequencies. To demodulate the transmitted signals, thereceive device should have a sample rate of at least twice the sonictransmission frequency. It is contemplated that the sample rate andother characteristics of the receive device are either known in advanceor discoverable in accordance with aspects of the present invention.

It may be determined that the receive device is incapable ofdemodulating data transmitted over the set of sonic transmissionfrequencies (406-No). In one instance, the sonic transmissionfrequencies available according to the noise characteristic may be toohigh for the receive device to sample and demodulate. Alternatively, itis also possible that noise in the area covers a wide sonic spectrumleaving no sonic transmission frequencies available even at the highestfrequencies of the communication system. In either of these or othersituations, one implementation of the present invention suspendstransmission of the sonic carrier signals for a time interval (408).During this interval, the present invention considers that the noisecharacteristic in the geographic location will change and make moresonic transmission frequencies available for the receive device todemodulate. In particular, it may be expected that a noisecharacteristic will change over the time interval and make the highersonic transmission frequencies available for sonic communication. It iscontemplated that this time interval can be a predetermined period oftime or may be a random or pseudo-random period of time. Once the timeinterval expires, aspects of the present invention samples the noisecharacteristic yet another time (404) and processing continues.

Eventually, a set of sonic transmission frequencies are identified thatthe receive device is capable of demodulating (406-Yes). In oneimplementation, the present invention checks if the noise floor at theseparticular frequencies in the noise characteristic is low enough to notinterfere with the transmission of sonic carrier signals at the sonictransmission frequencies. If the signal-to-noise (SNR) ratio at thesefrequencies is higher than a predetermined threshold, it is probablethat the receive device could demodulate data when the sonic carriersignals are transmitted. In most instances, it is desirable to notreduce the sonic transmission frequencies as the higher frequencies maytransmit with less interference from noise and other sound in the lowerfrequency range (410-No). For example, sonic carrier signals at thehigher sonic transmission frequency may experience less interferencefrom the audible sound in the lower frequency range.

In other instances, however, a reduction in the sonic transmissionfrequencies increases the usability of the sonic communication systemand method (410-Yes). In particular, lowering the sonic transmissionfrequencies might be more comfortable for people hearing the signaltransmitted between transmit and receive devices. For example, a personmight be disturbed hearing a 17.5 kHz signal modulated with data, yethave no discernable reaction hearing a 15 kHz signal with the samemodulated data. Decreased sonic transmission frequencies might alsoincrease the usability as it affects the distance and direction a signalmay travel (412).

Once identified, aspects of the present invention associate a set ofsonic transmission frequencies for transmitting a sonic carrier signalwith a geographic location (414). It is contemplated that the set ofsonic transmission frequencies could be one or more frequencies neededto perform sonic communication in accordance with the present invention.For example, two or more sonic transmission frequencies might be used toimplement an FSK protocol in accordance with the present invention.

FIG. 5 is a graphical representation of a noise characteristic 500 for aparticular location in accordance with one implementation of the presentinvention.

Four regions of this graph have been enumerated to better understandsonic communication of the present invention. Region I depicts thefrequency and gain associated with noise sampled in the geographic areaand generally includes the audible sound range. Region II reflects thesonic transmission frequencies suitable for sending sonic carriersignals in accordance with the present invention. In this example, soniccarrier signals 504 and 506 may be used for modulating data according toa sonic protocol such as FSK. Harmonics 508 are also within Region IIand should also be considered when identifying and analyzing the sonictransmission frequencies used by the system. Indeed, while higher sonictransmission frequencies in Region II may be available, the samplingrate of the communication system may limit the highest frequency to asonic frequency limit 502 as illustrated.

Region III reflects a noise floor associated with ambient noisegenerally considered above the audible frequency range. Many offrequencies in Region III are available for use by the soniccommunication system and method of the present invention. In contrast,Region IV shows a more active region of sound and a noise floor withinthe audible range of sound. Fewer sonic transmission frequencies may beavailable for use by aspects of the present invention given the highergain associated with the audible sounds in Region IV.

FIG. 6 is yet another flowchart representing the operations forwirelessly receiving the sonic carrier signals and data on a receivedevice in accordance with one implementation. In this implementation,the receive device receives the modulated data over the sonic carriersignal from the transmitting device along with noise in the geographiclocation (602). A sonic transducer such as a microphone picks up thesonic carrier signal and noise in the area then provides it to a CODECon the receive device. Noise may include ambient noise present in thearea as well as any injected noise intentionally added to the soniccarrier signal. For example, a “jingle” or song may be injected into theaudible range of frequencies that a person may hear and recognize. TheCODEC samples the sound at a sufficiently high sample rate to accuratelyrecover the transmitted sonic carrier signal. In general, the CODECoperates at a frequency of at least twice the frequency of the soniccarrier signal. For example, a CODEC operating at sample rate of atleast 40 Khz can sample sonic frequencies at or slightly above thetypical audible range of 20 Khz.

To recover the modulated data, aspects of the present invention may needto determine what sonic frequencies to demodulate. In oneimplementation, a determination is made whether there is a sonic carriersignal associated with a geographic location (604). For example, a busyretail location may need to use a higher sonic frequency forcommunication so as to avoid audible noise at lower frequencies fromloud music, conversations, electrical appliances, doors shutting orother changes in the noise level at the location. As a result, oneimplementation may prepare a receive device to demodulate data fromsonic carrier frequencies associated with a particular geographiclocation (606). For example, the GPS built into a phone can be usedidentify a geographic location and then determine the sonic transmissionfrequencies registered for use at the particular location.

In yet another implementation, the data may be modulated on apredetermined sequence of sonic carrier frequencies (608). Transmittingthe modulated data over duplicate sonic carrier frequencies providesmultiple alternative frequencies to demodulate by the receive device.Accordingly, a receive device may be configured to demodulate data usingmultiple predetermined sonic carrier frequencies (610). The receivedevice can select one or more of these sonic carrier frequencies or maydemodulate the sonic carrier frequencies in a predetermined order. It isalso contemplated that the receive device may select to demodulate thesonic carrier frequencies starting with the highest signal-to-noiseratio.

Alternatively, a sample of the ambient sound may be used to identify thesonic carrier frequencies with the least probable amount of interference(612) A sampling of the ambient sound may identify certain unused sonicfrequencies available for the sonic carrier frequencies carrying themodulated data. Generally (614) unused frequencies are above the audiblerange of sound. Accordingly, aspects of the present invention would thenprepare the receive device to perform demodulation of the data usingthese unused sonic frequencies (614). For example, if the data ismodulated over multiple different sonic carrier signals than aspects ofthe present invention would first attempt to demodulate data from thesignal carrier frequencies unused frequencies.

Once the frequencies of the sonic carrier signal are determined, thereceiver device proceeds to demodulate the data received from thetransmitter device in accordance with the sonic modulation protocol(616). As previously described, one sonic modulation protocol may becompatible with FSK while others may include MSK, QPSK or otherprotocols. The demodulated data appears as a binary sequence and is thenconverted into appropriate symbols for the application requesting theprocessing of the data (618).

FIG. 7 is a schematic block diagram of a device 700 capable of sonicallytransmitting and receiving data in accordance with implementations ofthe present invention. Device 700 includes a memory 702, soundcomponents 704 with speaker 706 and/or microphone 708, a processorcomplex 710, a broadband interface 712, data/voice interface 714 andsystem storage 716. It is contemplated that aspects of the inventiondescribed herein with respect to device 700 may include any type ofwireless phone, computer enabled devices (i.e., point-of-sale terminals,electronic billboards, kiosks) or general-purpose computers capable ofperforming sonic communication in accordance with the present invention.To that end, device 700 may also be broadly, and alternatively, referredto as a mobile device, wireless phone, smartphone, feature phone,computer, laptop computer, or smart book. It is also possible for device700 to represent specific function devices such as a headset with orwithout Bluetooth capabilities implemented using discrete components,ASICs, systems on a chip (SOC) or other technologies that provide lowercosts, compact packaging, or reduced power consumption. Some or all ofthe functions and components in device 700 may be used depending on theparticular needs of the design and the implementation. Moreover, variousaspects of the invention may include the same or similar componentsdespite the particular implementation illustrated in FIG. 7.

Also, it is contemplated that different implementations may combine oneor more of these components into a single component or may separate theminto different combinations of components. For example, a Bluetoothheadset may be implemented using digital signal processing (DSP)capabilities built into sound components 704 rather than a separateprocessor complex 710. The Bluetooth headset may be implemented withoutbroadband interface 712 or data/voice interface 714. Indeed, theBluetooth headset may not need discrete storage system storage 716 butinstead use storage embedded within sound components 704 or elsewhere.Likewise, the Bluetooth headset may be implemented using sonic BluetoothFast-sync component 728 and run-time environment 720 rather than all ofthe components depicted in memory 702. In general, functionalityprovided by device 700 may be implemented in hardware, software or invarious combinations thereof depending on the design decisions andimplementation details.

In the illustrative implementation in FIG. 7, memory 702 includesstorage locations that are addressable by the schematic processor andadapters for storing software program code and data. For example, memory702 may include a form of random access memory (RAM) that is generallycleared by a power cycle or other reboot operation and classified as“volatile” memory. Processor complex 710 and various adapters may, inturn, comprise processing elements and logic circuitry configured toexecute the software code and manipulate the data stored in the memory702. System storage 716 may be a form of non-volatile storage forstoring a copy of run-time environment 720, applications and other dataused by device 700.

Memory 702 includes run-time environment 720 portions which typicallyreside in memory and are executed by the processing elements. Run-timeenvironment 720 may be based upon a general-purpose operating system,such as Linux, UNIX® or Windows®, the AppleOS® or any othergeneral-purpose operating system. It may also be based upon morespecialized operating systems such as the Blackberry Operating systemfrom RIM, Inc., the Symbian OS from Nokia, Inc., the iPhone OS or iOSfrom Apple, Inc., the Android operating system from Google, Inc. ofMountain View Calif., the Web OS or Palm OS from Palm, Inc. or any otheroperating system designed for the mobile market place. For certaindevices like a Bluetooth headset that do not need a full operatingsystem, run-time environment 720 may be a simplified scheduler.

Sonic transmission strategy component 722 includes functions anddatasets necessary for identifying the sonic transmission frequenciesand timing to transmit and receive data sonically in accordance withaspects of the present invention. For example, sonic transmissionstrategy component 722 may identify the sonic frequencies fortransmitting data and to determine an optimal time for sonicallytransmitting the data. Sonic communication demodulation component 724includes functions and datasets necessary to demodulate data from soniccarrier signals sent over various sonic transmission frequencies inaccordance with a sonic communication protocol such as FSK modulation.Likewise, sonic communication modulation component 726 includesfunctions and datasets that encode data and modulate it over sonictransmission frequencies using a sonic carrier signal in accordance withthe present invention.

To facilitate fast synching of Bluetooth devices, aspects of the presentinvention further include a sonic Bluetooth fast-sync component 728. Thesonic Bluetooth fast-sync component 728 manages the use of a soniccarrier signal towards the establishment of a wireless connectionbetween devices in accordance with the Bluetooth protocol. This mayinclude managing the transmission of a sonic carrier signal modulatedwith a sonic Bluetooth code of the present invention. The sonicBluetooth code may include a wireless identifier of a Bluetooth deviceas well as other values associated with Bluetooth protocol. For example,sonic Bluetooth fast-sync component 728 can be used in a Bluetoothheadset to transmit the media access control (MAC) address of theBluetooth headset modulated over the sonic carrier signal. This includesaccessing data from a storage area on the Bluetooth headset holding thesonic carrier signal and then broadcasting the sonic carrier signal outof a speaker on the Bluetooth headset.

Generally, a Bluetooth headset will send this sonic carrier signal to asecond wireless device such as a wireless phone device. Accordingly, thesonic Bluetooth fast-sync component 728 running on the wireless phonedevice operates to receive and demodulate the sonic carrier signal andobtain the wireless identifier associated with the Bluetooth headset.Aspects of the present invention then use the wireless identifierassociated with the Bluetooth headset to bypass the conventional andtime-consuming portion of Bluetooth discovery and accelerate the overallconnection process. Sonic Bluetooth fast-sync of the present inventionis described in further detail later herein.

Sound components 704 include CODECs and other components for convertingsound transmitted through microphone 708 into a digital format (e.g.,analog to digital converters—ADC) such as PCM (pulse-code modulation).These CODECs are also capable of converting the digital information backinto a sonic analog signal (e.g., digital to audio converters—DAC) andthen broadcasting through speaker 706.

Processor complex 710 may be a single processor, multiple processors ormultiple processor cores on a single die. It is contemplated thatprocessor complex 710 represents the one or more computational unitsavailable in device 700. Processor complex 710 may be include physicalaggregations of multiple individual processors that each individuallyprocess and transfer data over interconnect 718. Alternateimplementations of processor complex 710 may be a single processorhaving multiple on-chip cores that may partition and share certainresources also on the processor die such as L1/L2 cache. For at leastthese reasons, aspects of the present invention may be described asusing a processor or multiple processors for convenience however it iscontemplated that the term “processor” could also be applied to designsutilizing one core or multiple cores found on a single chip or die.Likewise, the term process is used to describe the act of executing aset of related instructions on one or several processors but it is alsocontemplated that alternate implementations could be performed usingsingle or multiple threads executing the same or similar instructions onone or several processors each capable of multi-threaded execution.

Broadband interface 712 may be a WiFi, WiMAX or other connection to anetwork such as the Internet. The broadband interface 712 may alsoinclude wired connections to the Internet using CAT 5/6, Fiber Channelor similar. Data/voice interface 714 includes functions and datasets fortransmitting data and voice over a wireless network. Protocols used fordata/voice interface 714 may include one or more of GSM, CDMA, TDMA,FDMA or other wireless protocols. The data portions of data/voiceinterface 714 may carry data at 2G, 2.5G, 3G, 4G and beyond implementedusing various wireless protocols including EDGE, EV-DO, HSPA, andothers.

System storage 716 includes an area for storing applications, operatingsystem portions, and data. It is contemplated that system storage 716may be on non-removable flash or removable secure digital (SD) storageor other similar device and that the SD storage may be used for holdingcritical pieces of information such as credit card numbers and othersimilar information. Alternatively, system storage 716 may include or beassociated with conventional magnetic tapes or disks, optical disks suchas CD-ROM, DVD, magneto-optical (MO) storage or any other type ofnon-volatile storage devices suitable for storing different quantitiesof data. In general, system storage 716 may include storage accessedlocally through a direct connection or remotely in a “cloud” throughbroadband interface 712 or the data channel made available throughdata/voice interface 714.

FIG. 8A depicts layers associated with a Bluetooth protocol stack usedin accordance with aspects of the present invention. Bluetooth is awireless technology developed to connect nearby devices together andform adhoc networks referred to as piconets. The wireless Bluetoothconnections in these piconets are used as a substitute for cables thatwould otherwise connect these devices together. For example, theBluetooth protocol stack outlined in FIG. 8A may be used to connectBluetooth headsets to wireless phones. Like their wired counterparts,the wireless Bluetooth connection between the headset and phone enablesusers to participate in phone calls using a speaker and microphone onthe headset. Indeed, while aspects of the present invention may be usedto quickly fast-sync Bluetooth headsets with wireless phones, it iscontemplated that many other Bluetooth devices and/or applications wouldbenefit from aspects of the present invention as well.

The Bluetooth protocol stack in FIG. 8A includes a radio layer 802, abaseband layer 804, a link manager protocol (LMP) 806, a host controllerinterface (HCI) layer 808, logical link control and adaptation protocol(L2CAP), various Bluetooth profiles 812 and applications 820. In oneimplementation, the radio layer 802 is the physical layer implementedusing a fast frequency hopping wireless protocol in the 2.4 GHzfrequency range with 79 channels spread 1 Mhz apart. By hopping channelsmany times a second, the radio layer 802 is able to avoid interferencefrom other devices communicating in the same frequency range.

Baseband layer 804 packetizes data and controls how the packets are sentover the radio link 802. Voice 824 packets at baseband layer 804 aretransmitted over a synchronous connection oriented (SCO) link but notretransmitted if there is a failure. Instead, time slot reservations forthe SCO links ensure timely symmetric connections between the master andslave devices and better voice quality. Moreover, SCO link connectionsallow slave devices to respond using the time slot immediately after amaster has made a transmission. Masters may have up to three SCO linkswith a single slave or multiple slave devices while slave devices canhave up to two SCO links with other slaves.

Time slots not used for SCO links are free to carry data packets usingan alternative asynchronous connectionless link (ACL). To maintain dataintegrity, packets on the ACL link are retransmitted in the event ofpacket failure. If the master specifically addresses a slave device onthe ACL link, the slave device may respond during the next availabletime slot. When the master does not address a specific slave device thenthe communication on the ACL link is treated as a broadcast message.

Link manager protocol or LMP 806 uses lower level links setup by thebaseband layer 804 to establish connections and manage piconets of themaster and slave devices. LMP 806 delivers authentication, security andservice quality monitoring services as needed by the other layers of theprotocol stack.

Generally, the host controller interface or HCI 808 separates thehardware and software of a Bluetooth device thus the layers above it areimplemented in software and layers below are implemented in hardware.Accordingly, HCI 808 provides the upper software layers such as theL2CAP 810 an interface to the physical bus layer below. In some cases,HCI 808 is optional and can be bypassed by the upper software layers.

Logical link control and adaptation protocol (L2CAP) 810 receives data822 from Bluetooth profiles 812 and applications 820. The L2CAP 810takes data from the various applications and adapts it to fit theBluetooth protocol format, especially if there are certainimplementation differences between manufacturers. Parameters associatedwith Quality of Service (QoS) are also typically managed through L2CAP810.

Further up the protocol stack, Bluetooth profiles 812 provideinteroperability between different Bluetooth devices and/or applicationsespecially between different manufacturers and vendors. The Bluetoothprofile defines certain minimum requirements for the roles andcapabilities of certain types of applications. Devices and/orapplications must conform to these Bluetooth profiles in order tointeract—hence it is not sufficient to have a Bluetooth stack withoutthe appropriate profiles.

FIG. 8A illustrates a subset of these Bluetooth profiles including ageneric access profile (GAP) 812 a, a service discovery profile (SDP)812 b, radio frequency communication profile (RFCOMM) 812 c and advancedaudio distribution profile (A2DP) 812 d. GAP 812 a provides a basis forall other profiles and describes generic operations that Bluetoothdevices regardless of manufacturer must support. Those Bluetooth devicesimplementing GAP 812 a are thereby assured the ability to exchangeinformation with other devices and discover what applications aresupported. At a minimum, Bluetooth devices implementing GAP 812 a areable to establish a baseband link for the exchange of data.

Service discovery protocol (SDP) 812 b provides a mechanism forBluetooth devices to inquire other Bluetooth devices and identify theservices they offer. Information related to these services is madeavailable using the procedures defined in the SDP 812 b profile. Forexample, a mobile phone device connecting to a headset can use SDP 812 bto determine the various headset profiles supported by the particularheadset and settings needed to connect to each profile. Supportedheadset profiles might include headset profile (HSP), a hands freeprofile (HF) or an advanced audio distribution profile (A2DP).

Radio frequency communication profile (RFCOMM) 812 c emulates up tosixty RS-232 compatible serial ports and is available for use by otherBluetooth profiles. Telephony related Bluetooth profiles may use RFCOMM812 c as a carrier for the AT command set and applications such as aBluetooth FAX. RFCOMM 812 c can also act as a transport layer forperforming binary exchange between devices over Bluetooth using theobject exchange (OBEX) profile (not illustrated).

A2DP 812 d is a Bluetooth profile used to stream high quality audio fromone device to another device using wireless Bluetooth. This profile isoften used to stream audio to higher quality Bluetooth speakers as wellas headsets with higher quality and to car audio systems. Applications820 may implement and combine these profiles along with additional logicto provide users with a variety of wireless applications.

FIG. 8B illustrates the organization of these Bluetooth devices innetworks referred to as piconets. According to the Bluetoothspecification, a piconet can be made up of a master and up to sevenactive slave devices. A single master can communicate point-to-pointwith a single slave device or in a point-to-multipoint communicationconfiguration with multiple slave devices. It can be seen in Piconet Athat a single master communicates in a multipoint fashion with threeslaves. Moreover, one slave in Piconet A can be shared with both amaster in Piconet A as well as a master in Piconet C. Likewise, it isalso possible for a master in one piconet such as Piconet B to alsooperate as a slave to another piconet such as Piconet C.

Bluetooth has various power consumption modes allowing devices toconserve resources while continuing to operate at various capacities.The Bluetooth devices in “active mode” participate in the communicationchannel on many levels and use a greater amount of energy. In activemode, a master regularly sends packets to the slaves through a “polling”operation. The slave devices may not only respond to the master with apacket but occasionally re-synchronize themselves. Generally, thetransmission between devices lasts one time slot however a packet may beas large as five time slots in length. To help keep the communicationorganized, the master devices use even-numbered slots while the slavedevices use odd number slots.

To further reduce power consumption, Bluetooth devices enter a “sniff”mode where the devices occasionally listen to communication on thepiconet. Data transmission may be limited to the time frame thesedevices are sniffing data on the piconet. While devices in sniff modeare not considered “active”, they do stay synchronized thus avoiding theenergy consumption expended during the Paging substate and creation of anew connection.

Reducing power consumption even further, some devices may enter a “hold”mode that keeps devices synchronized but not active on the communicationchannel. A counter on the Bluetooth chip remains active while the restof the device is essentially inactive. Once the hold period expires, theBluetooth device will return to the “active” mode and continuetransmitting data over the channel. “Park” mode is yet another evenlower power mode that keeps the slave synchronized to the master withoutan active member address. Essentially, MAC addresses from the parkeddevices are released from the piconet. Like “hold” mode, devices in“park” mode are not active members of the piconet but can listen to abroadcast channel referred to as a “Beacon Channel”.

FIG. 9 illustrates the operations for implementing sonic Bluetoothfast-sync between two Bluetooth devices in accordance with aspects ofthe present invention. In one aspects, the sonic communication protocolof the present invention is used to bypass the time consuming Inquirysubstate associated with conventional Bluetooth “discovery”. This helpsreduce the time it takes for two or more Bluetooth devices to establisha communication channel with each other. First, the master does not needto spend time in the Inquiry substate in order to discover the addressesof other Bluetooth devices. This may save as much as 10 seconds from theoverall Bluetooth pairing operation. Likewise, slave devices usingaspects of the present invention can deliver their addresses directly tothe master device. Additional time is saved as the user does not need toselect from among multiple Bluetooth devices detected within the area.

A sonic carrier signal of the present invention carries the wirelessidentifier associated with the Bluetooth device modulated out-of-band.In one implementation, the wireless identifier modulated over the soniccarrier signal is the MAC address of the device as it uniquelyidentifies each Bluetooth device. For example, a first Bluetooth devicesuch as a Bluetooth headset can readily send the sonic carrier signal toa second Bluetooth device using the headset's speaker and built-indigital to analog converter (DAC). The second Bluetooth device—such as awireless phone device—may use a microphone to capture the wirelessidentifier associated with the first Bluetooth device and modulated overthe sonic carrier signal.

In operation and in reference to FIG. 9, sonic Bluetooth code (SBC)server converts a wireless identifier associated with a Bluetooth deviceinto a digital sonic Bluetooth code for modulation. Next, the sonicBluetooth code server modulates the sonic Bluetooth code onto a soniccarrier signal within an audio file in accordance with aspects of thepresent invention. It is contemplated that different data may beincluded in the sonic Bluetooth code in addition to the wirelessidentifier depending on how the Bluetooth devices are going to beconnected.

One mode of connecting Bluetooth devices of the present invention mayinclude an authentication key along with a wireless identifier in thesonic Bluetooth code. The authentication key is generally referred to inthe Bluetooth protocol as a PIN and is used in conjunction with otherdata to create a link key for authenticating devices. However, it iscontemplated that the authentication key may also include, as describedin the Bluetooth protocol, other intermediate values leading up tocreating the link key. For example, an authentication key may also referto a value such as K_(init) as it is an intermediate value that alsocontributes to the generation of the link key in the Bluetooth protocol.

Accordingly, the authentication key may also be modulated onto the soniccarrier signal along with the wireless identifier and included in theaudio file. By sending the authentication key, it can be used later toprogrammatically help authenticate devices in accordance with theBluetooth protocol. Further, instead of using a default authenticationkey value such as “0000”, the authentication key may be set to anycombination of values thus greatly increasing the overall security ofthe system when a connection is made. Moreover, there is no concern thatthe authentication key might be lost or misplaced since theauthentication key is stored and sonically transmitted between Bluetoothdevices.

In yet another mode of connecting Bluetooth devices, a link key may beincorporated along with the wireless identifier in the sonic Bluetoothcode. Bluetooth devices that have a link key are considered ‘bonded’ asthey have already completed the pairing process and have beenauthenticated. Consequently, including the link key as part of the sonicBluetooth code further reduces the connection time between Bluetoothdevices. For example, the Bluetooth channel may be established withoutentering the Inquiry substate as both the wireless identifier and thelink key are known in advance. As a result, Bluetooth devices receivingthe link key as part of the sonically transmitted sonic Bluetooth codemay be authenticated over a Bluetooth channel almost immediately.

Another connection mode of the present invention may tailor the sonicBluetooth code to include data for an out-of-band pairing mode referredto as Secure Simple Pairing (SSP). SSP is defined by the Bluetoothprotocol and operates as a substitute for conventional pairing usingout-of-band communication. Sonic communication of the present inventionmay be used for the out-of-band communication needed to exchange thesepredetermined parameters in accordance with the SSP protocol. Forexample, SSP uses the wireless identifier of at least one Bluetoothdevice along with other predetermined parameters to complete the paringprocess.

In each of these and other modalities, the resulting audio file isdownloaded onto a storage area of a Bluetooth device either duringmanufacture or an after-market customization process. In oneimplementation, the storage area used to hold the audio file may bepartitioned from the same storage area used to hold the firmware codeand drive the functions of a Bluetooth headset device. Alternatively,the storage area used to hold the audio file may accessible by thefirmware code of the Bluetooth headset device but located in a separatearea. It is contemplated that the firmware may be customized andreinstalled after manufacture to both receive the audio file having thedigital sonic Bluetooth code and optional data of the present inventionand effectuate fast-sync functionality (902). It is also possible thatthe Bluetooth headset device may also receive one or more customringtones, updates or other features as part of this customizationprocess.

To begin the connection process between Bluetooth devices, a secondBluetooth device is prepared to receive the sonic Bluetooth code fromthe first Bluetooth device through a transducer. For example, a wirelessphone device may execute a sonic Bluetooth code fast-sync service thatlistens for the playback of the audio and modulated sonic Bluetooth codefrom the Bluetooth headset device (904). Accordingly, the Bluetoothheadset device is manipulated to playback the audio file and broadcastthe modulated sonic Bluetooth code to the wireless phone device (906).In one implementation, the sonic Bluetooth code fast-sync service on thewireless phone device receives the audio and demodulates the sonicBluetooth code and obtains the wireless identifier of the headset (908).The wireless phone device may also receive other optional data modulatedover the sonic carrier signal; the optional data is associated with thewireless identifier for later use. For example, the optional data mayinclude an authentication key for use during subsequent Bluetoothauthentication operations.

With reference to the wireless identifier, the phone device may use theidentifier to optionally access custom features, data or otherinformation from sonic Bluetooth code server (910). For example, thewireless phone device may download from the sonic Bluetooth code servera special ringtone associated with the particular wireless identifier(i.e., MAC address) of the Bluetooth headset and then loaded on thesonic Bluetooth code server when the headset was manufactured orcustomized.

In making the connection with the Bluetooth headset, the phone devicebypasses the Inquiry substate as it has already received the wirelessidentifier of the Bluetooth device. In this example, the Bluetooth stackon the wireless phone device uses the wireless identifier to locate theheadset through the Paging substate of the protocol (912). The wirelessphone device Pages the specific wireless identifier address targetingthe Bluetooth headset while in Page scanning mode. Since the Inquirysubstate is bypassed, the clock offset for the mobile phone device andBluetooth headset is also determined in the Paging substate. Generally,the Bluetooth protocol uses the system clock and wireless identifier ofthe master to find the proper clock offset and other parameters in thePaging substate. For example, the wireless identifier (BD_ADDR) of themaster facilitates determining the frequency hopping sequence and aChannel access code; phase in the hopping sequence and clock offset isdetermined according to the system clock of the master. Once the Pagingsubstate completes, a physical channel or connection is establishedbetween the wireless phone device and the Bluetooth headset matching thewireless identifier.

Next, a link manager (LM) uses a link manager protocol (LMP) toestablish a logical channel between the wireless phone device andBluetooth headset over the physical or baseband layer. Security ismaintained over the logical channel by authenticating peers with a linkkey. If the link key already exists, the logical channel between thewireless phone device and Bluetooth headset is considered authenticatedand the logical channel is established. Indeed, one implementation ofthe present invention may sonically transmit the link key in addition tothe wireless identifier in the sonic Bluetooth code thus authenticatingthe logical channel if this link key is missing or deleted.

If the link key is otherwise not available, a new link key may begenerated using an authentication key, a random number generator and awireless identifier, which is unique for each Bluetooth device. Theauthentication under Bluetooth begins with one Bluetooth deviceinitiating a challenge (Initiating Device) to another Bluetooth device(Non-Initiating Device) based upon a wireless identifier or Bluetoothaddress (BD_ADDR) and a link key. The Bluetooth protocol refers to usinga combination link key for authentication however it is contemplatedthat other link keys might also be used for this process. TheNon-Initiating Device may be authenticated or rejected depending on theresponse to the challenge and the value calculated for this link key.

In accordance with aspects of the present invention, the InitiatingDevice receives the wireless identifier (BD_ADDR) of the Non-InitiatingDevice in the sonic Bluetooth code over the sonic carrier signal ratherthan through the Inquiry substate. It is further possible to send theauthentication key in the sonic Bluetooth code over the same soniccarrier signal. For example, a Bluetooth headset—acting as a slavedevice—may transmit it's wireless identifier and the authentication keyin an sonic Bluetooth code over the sonic carrier signal to the wirelessphone device acting as a master device.

In calculating the link key, the authentication key may be a defaultvalue such as ‘0000’ that is both easy to remember and well-known inorder to streamline the authentication process. However, aspects of thepresent invention also allows the use of a more secure customauthentication key values provided by the Bluetooth headset over thesonic carrier signal as previously described. Custom authentication keyvalues can be used with similar ease of use as default values as theauthentication key is stored on the device and transmitted sonically inaccordance with the present invention. The user need not remember oreven enter the custom authentication key value to take advantage of theincreased security.

Once authenticated, the wireless phone device and Bluetooth headset mayencrypt transmissions over the logical channel to communicate privately(916). In one implementation, a master device issues an encryption keyto one or more selected slave devices on the piconet to be included inthe private communication. Slave devices in receipt of the encryptionkey may then communicate with the master and other slaves over theencrypted logical channel.

FIGS. 10, 11, 12 and 13 provide additional details to the sonicBluetooth fast-sync described in conjunction with FIG. 9.

In particular, FIG. 10 is a flowchart diagram providing the operationsassociated with storing a sonic carrier signal in a storage areaassociated with a first wireless device in accordance with the presentinvention. For example, these operations could be used to store an audiofile on a Bluetooth headset for sonic Bluetooth fast-sync in accordancewith the present invention.

Initially, aspects of the present invention associate a wirelessidentifier with a first wireless device that identifies the firstwireless device and facilitates establishing communication with a secondwireless device over a Bluetooth channel (1000). With respect to theBluetooth protocol, the wireless identifier may be the MAC address thatuniquely identifies each Bluetooth device. The wireless identifier maybe identified through a query to the Bluetooth stack associated with thedevice or maybe read directly from a label or engraving on the device.In one implementation, the first wireless device may be any number ofdevices selected from a set of wireless devices including: a monauralheadset, a stereo headset, a mobile speakerphone that may be used in acar and a non-mobile speakerphone integrated into a car. It is alsocontemplated that the first wireless device might also be a computer, awireless phone device, a television, a display device, picture frames,electronic billboards, medical devices and others. Indeed, the firstwireless device may be any Bluetooth capable device that might benefitfrom connecting with another Bluetooth device quickly using the sonicfast-sync based protocol methods and systems of the present invention.

Next, aspects of the present invention modulate the wireless identifierassociated with the first wireless device as a sonic Bluetooth code overa sonic carrier signal to be transmitted as sound (1002). In oneimplementation, the sonic Bluetooth code includes a digitalrepresentation of a MAC address which is typically identified as astring of twelve (12) hexadecimal digits found in six (6) bytes of data.For example, a Bluetooth MAC address might be AB: 02: C4: DE: FF: 59.This digital representation of the MAC or sonic Bluetooth code is thenmodulated in accordance with one implementation over one or morefrequencies of the sonic carrier signal using frequency-shift keying(FSK) or other suitable protocols.

As previously described, the sonic Bluetooth code might also include alink key in addition to the wireless identifier for rapid authenticationand connection with other devices. For example, the link key included inthe sonic Bluetooth code may be the link key referred to in theBluetooth protocol as a combination link key. It is also possible thelink key could be other types of link keys provided in the Bluetoothprotocol and would depend on the particular implementation andapplication.

In addition to the wireless identifier, it is contemplated that thesonic Bluetooth code might include the authentication key associatedwith the first wireless device. Specifying the authentication key inthis manner would make it easy to use both default and customizedauthentication keys during the subsequent Bluetooth authenticationoperation. For example, a customized authentication key value of “4592”might be included as part of the sonic Bluetooth code as a way ofincreasing the security during authentication and establishment of theBluetooth connection. As described in further detail later herein, theuser would not have to remember nor enter this customized authenticationkey or even the default authentication key (e.g., ‘0000’) as the secondwireless device would receive and store the authentication keyinternally. This has the dual benefit of increasing ease of use whilealso increasing security during establishment of the Bluetoothconnection.

Aspects of the present invention may optionally determine if the secondwireless device will have access to servers over a network when thefirst and second wireless devices are eventually connected (1004). Thesecond wireless device generally has access to servers over a network ifit has an Internet connection or other broadband network connection. Inthe event the second wireless device does have such a broadbandconnection (1004-Yes), it becomes possible for the second wirelessdevice to reference and access content associated with the firstwireless device. Accordingly, aspects of the present invention maycreate a wireless profile on a server for storing additional data orcontent identified by the wireless identifier (1006). In oneimplementation, this wireless profile may be configured to access customfeatures associated with the first wireless device including: ringtones,screen savers, credits associated with loyalty programs and coupons. Thewireless profile on the server may even include the authentication keyused to authenticate devices on the Bluetooth logical link.

Alternatively, the second wireless device may not have an Internetconnection or broadband connection thus limiting access to the wirelessprofile (1004-No). In this case, aspects of the present inventionproceeds to store a representation of the sonic carrier signal in astorage area associated with the first wireless device. When processed,this sonic carrier signal transmits the sonic carrier signal carryingthe sonic Bluetooth code (1008). In one implementation, the soniccarrier signal is stored as sound in an audio file using memory onboardthe first Bluetooth device. For example, the audio file may be stored ona certain amount of flash built into a Bluetooth headset using the MP3or WAV (PCM) file formats. It is also possible for the sonic carriersignal to be stored in a portion of the firmware embedded within thefirst Bluetooth device carved out for storing the sonic carrier signalof the present invention.

The sonic carrier signal may be stored on the first wireless device withor without the structure of a file or filesystem. In this case, aspectsof the present invention might first identify a storage area associatedwith the first wireless device capable of storing the sonic carriersignal. The storage area could be an unstructured area that receives astream of binary data. Or the storage area could be formatted andmanaged using a filesystem construct. Next, aspects of the presentinvention then writes the sonic carrier signal having the sonicBluetooth code into the storage area for subsequent access duringtransmission of the sonic Bluetooth code. Once again, the sonic carriersignal may be written to comply with formats such as MP3 or WAV using afilesystem and file structure. To reduce the complexity and overhead ofthe file system, the sonic carrier signal may also be written withoutany structure as a stream of binary data.

FIG. 11 is another flowchart diagram illustrating operations associatedwith sonically transmitting a wireless identifier and making a Bluetoothconnection between a first wireless device and a second wireless devicein accordance with one implementation. For example, a Bluetooth headsetcan use these operations to sonically transmit the wireless identifierof the Bluetooth headset to a wireless phone device and then connect.

Accordingly, one implementation accesses a storage area associated withthe first wireless device holding the sonic carrier signal and sonicBluetooth code. The sonic carrier signal has a sonic Bluetooth codedigitally modulated over the sonic carrier signal and representative ofthe wireless identifier and potentially other Bluetooth relatedparameters. As previously described, the sonic carrier signal may bestored as a file in a structured filesystem area in the storage area ormay be stored as a stream of binary data in a more unstructured portionof the storage area. It is also contemplated that the storage areaholding the sonic carrier signal may be part of the first wirelessdevice or may be separate from the first wireless device. For example, acar kit and Bluetooth speakerphone built into a car may access a storagearea separately located along with other electronics within the car.

Next, aspects of the present invention transmit the sonic Bluetooth codemodulated over the sonic carrier signal including a wireless identifierassociated with the first wireless device (1102). Generally, thewireless identifier is associated with a first wireless device, such asa Bluetooth headset, and is to be received by a second wireless devicethrough a sonic transducer. The second wireless device could be awireless phone device receiving the sonic carrier signal through amicrophone or may be any other Bluetooth capable device. In addition tothe wireless identifier, the sonic Bluetooth code may include additionaldata such as a link key, an authentication key and potentially otherdata associated with the Bluetooth protocol or useful to the operationof the Bluetooth devices.

If the transmission is successful, aspects of the present inventionreceive a request from the second wireless device to establish aphysical channel with the first wireless device using the Bluetoothprotocol (1104). In one implementation of the present invention, thefirst wireless device receives the request from the second wirelessdevice using the Paging substate of the Bluetooth protocol. In this orother implementations, the Bluetooth connection occurs more quicklybetween the first and second wireless device by avoiding the timeconsuming Inquiry substate—sometimes referred to as Bluetooth discovery.For example, a Bluetooth headset or other Bluetooth-enabled wirelessdevice receives the connection request in the Paging substate directlyfrom the wireless phone device using the wireless identifier transmittedover the sonic carrier signal.

Next, the first wireless device and second wireless device establish aphysical channel in accordance with the Bluetooth protocol through anexchange of messages associated with the wireless identifier (1106).Generally the physical channel is established as soon as the firstwireless device accepts the request; this causes both devices to enterthe next Bluetooth substate of Authentication. Authentication helpsverify the identity of the wireless devices in preparation forexchanging data over a logical channel. Of course, it is also possiblethat the first wireless device may reject the request to establish thephysical channel in which case the Authentication substate is notentered and the Bluetooth protocol terminates.

Accordingly, authentication identifies the first wireless device and thesecond wireless device over a logical channel using a link key generatedin accordance with the Bluetooth protocol (1108). Bluetooth devices thatalready have a link key are deemed “bonded” and therefore can beauthenticated immediately. However, if the devices are not bonded thenBluetooth authenticates them using a challenge-response protocol thatincorporates an authentication key and wireless identifier. In oneimplementation, the second wireless device “challenges” the firstwireless device to derive a link key from a random number and thewireless identifier of the first wireless device.

While the authentication key for the challenge may be provided by theuser, aspects of the present invention may also incorporate theauthentication key as part of the sonic Bluetooth code transmitted tothe second wireless device over the sonic carrier signal. For moreimmediate bonding between the wireless devices, it is also contemplatedthat the link key may be provided directly as part of the sonicBluetooth code and in accordance with further aspects of the presentinvention. Aspects of the present invention may also use another pairingprotocol from Bluetooth standard referred to as Secure Simple Pairing(SSP) to perform the authentication and pairing.

Devices generally encrypt communication over the logical channel ratherthan share with all devices on the piconet (1110). The Bluetoothprotocol creates an encryption key to encrypt the packets and thenshares the encryption key with select devices. Only the selected deviceson the piconet sharing the encryption key will be able to effectivelycommunicate with each other.

FIG. 12 is another flowchart diagram illustrating further authenticationoperations possible when providing a sonic Bluetooth code over a soniccarrier signal in accordance with the present invention. Aspects of thepresent invention initially create a logical channel between the linkmanager of the first wireless device and link manager of the secondwireless device using a sonically transmitted wireless identifier(1202). Devices on the logical channel should be authenticated shortlyafter the logically channel is created. Fortunately, if the first andsecond device already have a link key (i.e., the devices are bonded)(1204-Yes) the devices have been authenticated in connection with thelogical channel and can proceed to communicate over the logical channelin accordance with the Bluetooth protocol (1206).

Implementations of the present invention provide several different andnovel approaches to authentication if the devices do not already have alink key (1204-No). First, one implementation of the present inventionmay include a link key in the sonic Bluetooth code transmitted from thefirst wireless device to the second wireless device (1208-Yes). Forexample, a Bluetooth headset device may send both the wirelessidentifier and link key over the sonic carrier signal to a wirelessphone device. Once again, the first and second devices areauthenticated, bonded and can continue communications using theBluetooth protocol (1206).

If the link key is not provided (1208-No), an alternate implementationof the present invention may include the wireless identifier andauthentication key in the sonic Bluetooth code transmitted from thefirst wireless device to the second wireless device (1210-Yes).Accordingly, aspects of the present invention create a link key inaccordance with the Bluetooth protocol using the authentication key andwireless identifier from the sonic carrier signal (1212). These devicesalso continue with the Bluetooth protocol once they are properlyauthenticated (1206).

Aspects of the present invention may also assist in authentication evenif the wireless identifier but not the authentication key is provided(1210-No). To authenticate the devices under these conditions, thesecond wireless device may receive the authentication key from a user(1214-Yes) and then combine with the wireless identifier transmittedover the sonic carrier signal (1216). The link key is created using thisdata enabling the wireless devices to be authenticated and continue withthe Bluetooth protocol (1206). Authentication is still possible if theuser does not provide the authentication key (1214-No) as long as thedefault authentication key on the second wireless device matches theauthentication key on the first wireless device (1218-Yes). Aspects ofthe present invention would then combine the wireless identifiertransmitted over the sonic carrier signal with the defaultauthentication key (1216) thus facilitating authentication of thewireless devices once again. In the event the authentication key isimproper or not provided, wireless devices on the logical channel maynot be authenticated in accordance with the Bluetooth protocol (1220).

FIG. 13 is another flowchart diagram illustrating operations associatedwith sonically receiving a wireless identifier and making a Bluetoothconnection between a second wireless device and a first wireless device.Aspects of the present invention initially prepare a transducer, such asa microphone, on a second wireless device to receive a sonic Bluetoothcode modulated over a sonic carrier signal (1302). In oneimplementation, the microphone and CODEC continuously process audio anddetermine if the demodulated sonic carrier signal received has a sonicBluetooth code. This “always-on” approach may not be desirable as itexpends a great deal of energy on the second wireless device. This isparticularly undesirable on a wireless phone device as it may drain thebattery and render the phone inoperable for making phone calls or otherfunctions.

Alternatively, the microphone and CODEC of the second wireless devicemay conditionally turn-on when in the presence of one or more Bluetoothdevices. This conserves more energy on the second wireless devicecompared with the “always-on” approach. If the Bluetooth radio sensesother Bluetooth devices, aspects of the present invention beginsprocessing the audio and determines if the sonic carrier signal iscarrying the sonic Bluetooth code. For example, a wireless phone devicemay begin processing audio when the signal strength detected from anynearby Bluetooth device reaches a minimum threshold. To reduce energyconsumption further, a user may instead initiate audio processing bypressing a button or other control on the second wireless device toprocess the audio “on-demand”. This last approach reduces the energyconsumption as the audio processing occurs only when a sonic Bluetoothfast-sync connection in accordance with the present invention isdesired. For example, the user may reprogram a physical button on thephone or a button on a touch screen of the phone to effectuate theon-demand implementation of Bluetooth fast-sync.

Each of the aforementioned approaches enables aspects of the presentinvention to receive the sonic Bluetooth code modulated over a soniccarrier signal (1304). The sonic carrier signal is generally transmittedfrom a speaker or other transducer associated with a first wirelessdevice. For example, the speaker from a Bluetooth headset or Bluetoothcarkit may be used to transmit the sonic carrier signal. Oneimplementation receives and demodulates the sonic carrier signal on thesecond wireless device reproducing the sonic Bluetooth code andcorresponding wireless identifier associated with the first wirelessdevice (1306). In addition to the wireless identifier, sonic Bluetoothcode may also include other useful data related to the Bluetoothprotocol.

Implementations of the present invention may then transmit a request tofirst wireless device to establish a physical channel in accordance withthe Bluetooth protocol (1308). Aspects of the present invention may usethe Paging substate of the Bluetooth protocol directly without invokingthe Inquiry substate. As previously described, this approach reduces thedelay for connecting devices as the Inquiry substate or Bluetoothdiscovery process is time consuming and sometimes difficult. It is alsoadvantageous as the sonic carrier signal can be more easily directedbetween a first and second wireless device attempting to becomeconnected via the Bluetooth protocol.

Next, the first wireless device and second wireless device establish aphysical channel in accordance with the Bluetooth protocol through anexchange of messages associated with the wireless identifier (1310).Generally the physical channel is established as soon as the firstwireless device accepts the request; in addition this causes bothdevices to enter the next Bluetooth substate of Authentication.Alternatively, it is also possible that the first wireless device mayreject the request to establish the physical channel in which case theAuthentication substate is not entered and the Bluetooth protocolterminates.

Accordingly, authentication identifies the first wireless device and thesecond wireless device over a logical channel using a link key generatedin accordance with the Bluetooth protocol (1312). Bluetooth devices thatalready have a link key are deemed “bonded” and therefore can beauthenticated immediately. However, if the devices are not bonded thenBluetooth authenticates them using a challenge-response protocolincorporating an authentication key, a wireless identifier andpotentially other information. Authentication may also be performed inaccordance with the Secure Simple Pairing (SSP) of the Bluetoothprotocol using at least a wireless identifier received over the soniccarrier signal. Indeed, aspects of the present invention mayauthenticate the first wireless device and second wireless device insubstantially the same way as described in conjunction with FIG. 12.

Devices generally encrypt communication over the logical channel ratherthan share with all devices on the piconet (1314). The Bluetoothprotocol uses an encryption key to encrypt the packets and then sharesencryption key with certain devices.

While examples and implementations have been described, they should notserve to limit any aspect of the present invention. Accordingly,implementations of the invention can be implemented in digitalelectronic circuitry, or in computer hardware, firmware, software, or incombinations of them. Apparatus of the invention can be implemented in acomputer program product tangibly embodied in a machine readable storagedevice for execution by a programmable processor; and method steps ofthe invention can be performed by a programmable processor executing aprogram of instructions to perform functions of the invention byoperating on input data and generating output. The invention can beimplemented advantageously in one or more computer programs that areexecutable on a programmable system including at least one programmableprocessor coupled to receive data and instructions from, and to transmitdata and instructions to, a data storage system, at least one inputdevice, and at least one output device. Each computer program can beimplemented in a high level procedural or object oriented programminglanguage, or in assembly or machine language if desired; and in anycase, the language can be a compiled or interpreted language. Suitableprocessors include, by way of example, both general and special purposemicroprocessors. Generally, a processor will receive instructions anddata from a read only memory and/or a random access memory. Generally, acomputer will include one or more mass storage devices for storing datafiles; such devices include magnetic disks, such as internal hard disksand removable disks; magneto optical disks; and optical disks. Storagedevices suitable for tangibly embodying computer program instructionsand data include all forms of non-volatile memory, including by way ofexample semiconductor memory devices, such as EPROM, EEPROM, and flashmemory devices; magnetic disks such as internal hard disks and removabledisks; magneto optical disks; and CD ROM disks. Any of the foregoing canbe supplemented by, or incorporated in, ASICs.

While specific embodiments have been described herein for purposes ofillustration, various modifications may be made without departing fromthe spirit and scope of the invention. Accordingly, the invention is notlimited to the above-described implementations, but instead is definedby the appended claims in light of their full scope of equivalents.

What is claimed is:
 1. A computer implemented method of facilitatingchallenge-response communication using a second wireless device,comprising: preparing a transducer on a second wireless device toreceive a sonic code modulated over a sonic carrier signal; receivingthe sonic code modulated over the sonic carrier signal representative ofa wireless identifier associated with a first wireless device;demodulating the sonic code from the sonic carrier signal to produce thecorresponding wireless identifier associated with the first wirelessdevice; and transmitting a request to the first wireless device toestablish a physical channel in accordance with the challenge-responseprotocol using the wireless identifier received over the sonic carriersignal.
 2. The method of claim 1 further comprising establishing aphysical channel in accordance with the challenge-response protocolbetween the first wireless device and the second wireless device throughan exchange of messages associated with the wireless identifier of thefirst wireless device.
 3. The method of claim 2 wherein the exchange ofmessages occurs using at least a paging substate of thechallenge-response protocol.
 4. The method of claim 1 wherein modulatingthe data over the sonic carrier signal further comprises: encoding thedata over one or more frequencies of the sonic carrier signal inaccordance with a frequency-shift keying (FSK) protocol.
 5. The methodof claim 1 wherein the first wireless device is a headset and the secondwireless device is a wireless phone device.
 6. The method of claim 2further comprising: authenticating the first wireless device and thesecond wireless device in accordance with the challenge-responseprotocol.
 7. The method of claim 6 further comprising: generating a linkkey in accordance with a challenge-response protocol to authenticate thefirst wireless device and the second wireless device using at least thewireless identifier and an authentication key modulated over the soniccarrier signal.
 8. The method of claim 6 wherein authenticating furthercomprises: generating a link key in accordance with a challenge-responseprotocol to authenticate the first wireless device and the secondwireless device using at least the wireless identifier modulated overthe sonic carrier signal.
 9. The method of claim 6 whereinauthenticating further comprises: generating a link key in accordancewith a challenge-response protocol to authenticate the first wirelessdevice and the second wireless device using at least the wirelessidentifier and a predetermined link key modulated over the sonic carriersignal.
 10. An apparatus that facilitates challenge-responsecommunication using a second wireless device, comprising: a processorconfigured to execute instructions; a memory having instructions whenexecuted causes the processor to prepare a transducer on a secondwireless device to receive a sonic code modulated over a sonic carriersignal, receive the sonic code modulated over the sonic carrier signalrepresentative of a wireless identifier associated with a first wirelessdevice, demodulate the sonic code from the sonic carrier signal toproduce the corresponding wireless identifier associated with the firstwireless device, and transmit a request to the first wireless device toestablish a physical channel in accordance with the challenge-responseprotocol using the wireless identifier received over the sonic carriersignal.
 11. The apparatus of claim 10 wherein the memory furthercomprises instructions when executed that, establish a physical channelin accordance with the challenge-response protocol between the firstwireless device and the second wireless device through an exchange ofmessages associated with the wireless identifier of the first wirelessdevice.
 12. The apparatus of claim 11 wherein the exchange of messagesoccurs using at least a paging substate of the challenge-responseprotocol.
 13. The apparatus of claim 10 wherein the sonic code modulatedover the sonic carrier signal further comprises: encoding the data overone or more frequencies of the sonic carrier signal in accordance with afrequency-shift keying (FSK) protocol.
 14. The apparatus of claim 10wherein the first wireless device is a headset and the second wirelessdevice is a wireless phone device.
 15. The apparatus of claim 11 whereinthe memory further comprises instructions when executed that,authenticate the first wireless device and the second wireless device inaccordance with the challenge-response protocol.
 16. The apparatus ofclaim 15 wherein the memory further comprises instructions when executedthat, generate a link key in accordance with a challenge-responseprotocol to authenticate the first wireless device and the secondwireless device using at least the wireless identifier and anauthentication key modulated over the sonic carrier signal.
 17. Theapparatus of claim 15 wherein the memory further comprises instructionswhen executed that, generate a link key in accordance with achallenge-response protocol to authenticate the first wireless deviceand the second wireless device using at least the wireless identifiermodulated over the sonic carrier signal.
 18. The apparatus of claim 15wherein the memory further comprises instructions when executed that,generate a link key in accordance with a challenge-response protocol toauthenticate the first wireless device and the second wireless deviceusing at least the wireless identifier and a predetermined link keymodulated over the sonic carrier signal.